package cn.iocoder.yudao.module.biz.controller.admin.trainingPlan.vo;

import lombok.*;
import java.util.*;
import io.swagger.annotations.*;
import javax.validation.constraints.*;
import org.springframework.format.annotation.DateTimeFormat;

import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

/**
* 培训计划 Base VO，提供给添加、修改、详细的子 VO 使用
* 如果子 VO 存在差异的字段，请不要添加到这里，影响 Swagger 文档生成
*/
@Data
public class BizTrainingPlanBaseVO {

    @ApiModelProperty(value = "计划名称", required = true)
    @NotNull(message = "计划名称不能为空")
    private String planName;

    @ApiModelProperty(value = "开始时间", required = true)
    @NotNull(message = "开始时间不能为空")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private Date beginTime;

    @ApiModelProperty(value = "结束时间", required = true)
    @NotNull(message = "结束时间不能为空")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private Date endTime;

    @ApiModelProperty(value = "培训范围", required = true)
    @NotNull(message = "培训范围不能为空")
    private Integer trainingRange;

    @ApiModelProperty(value = "培训类别", required = true)
    @NotNull(message = "培训类别不能为空")
    private Integer trainingType;

    @ApiModelProperty(value = "培训学时", required = true)
    @NotNull(message = "培训学时不能为空")
    private String trainingPeriod;

    @ApiModelProperty(value = "培训方式", required = true)
    @NotNull(message = "培训方式不能为空")
    private String trainingMethod;

    @ApiModelProperty(value = "计划经费")
    private String money;

    @ApiModelProperty(value = "负责人", required = true)
    @NotNull(message = "负责人不能为空")
    private String managerId;

}
